home *** CD-ROM | disk | FTP | other *** search
-
-
-
- GETITIMER C Library Procedures GETITIMER
-
-
-
- NNAAMMEE
- getitimer, setitimer - get/set value of interval timer
-
- SSYYNNOOPPSSIISS
- ##iinncclluuddee <<ssyyss//ttiimmee..hh>>
-
- ##ddeeffiinnee IITTIIMMEERR__RREEAALL 00 //** rreeaall ttiimmee iinntteerrvvaallss **//
- ##ddeeffiinnee IITTIIMMEERR__VVIIRRTTUUAALL 11 //** vviirrttuuaall ttiimmee iinntteerrvvaallss **//
- ##ddeeffiinnee IITTIIMMEERR__PPRROOFF 22 //** uusseerr aanndd ssyysstteemm vviirrttuuaall ttiimmee **//
-
- ggeettiittiimmeerr((wwhhiicchh,, vvaalluuee))
- iinntt wwhhiicchh;;
- ssttrruucctt iittiimmeerrvvaall **vvaalluuee;;
-
- sseettiittiimmeerr((wwhhiicchh,, vvaalluuee,, oovvaalluuee))
- iinntt wwhhiicchh;;
- ssttrruucctt iittiimmeerrvvaall **vvaalluuee,, **oovvaalluuee;;
-
- DDEESSCCRRIIPPTTIIOONN
- The system provides each process with three interval timers,
- defined in <_s_y_s/_t_i_m_e._h>. The _g_e_t_i_t_i_m_e_r call returns the
- current value for the timer specified in _w_h_i_c_h in the struc-
- ture at _v_a_l_u_e. The _s_e_t_i_t_i_m_e_r call sets a timer to the
- specified _v_a_l_u_e (returning the previous value of the timer
- if _o_v_a_l_u_e is nonzero).
-
- A timer value is defined by the _i_t_i_m_e_r_v_a_l structure:
-
- struct itimerval {
- struct timeval it_interval; /* timer interval */
- struct timeval it_value; /* current value */
- };
-
- If _i_t__v_a_l_u_e is non-zero, it indicates the time to the next
- timer expiration. If _i_t__i_n_t_e_r_v_a_l is non-zero, it specifies a
- value to be used in reloading _i_t__v_a_l_u_e when the timer
- expires. Setting _i_t__v_a_l_u_e to 0 disables a timer. Setting
- _i_t__i_n_t_e_r_v_a_l to 0 causes a timer to be disabled after its
- next expiration (assuming _i_t__v_a_l_u_e is non-zero).
-
- Time values smaller than the resolution of the system clock
- are rounded up to this resolution (on the VAX, 10 mil-
- liseconds).
-
- The ITIMER_REAL timer decrements in real time. A SIGALRM
- signal is delivered when this timer expires.
-
- The ITIMER_VIRTUAL timer decrements in process virtual time.
- It runs only when the process is executing. A SIGVTALRM
- signal is delivered when it expires.
-
- The ITIMER_PROF timer decrements both in process virtual
-
-
-
- Sprite v1.0 December 18, 1986 1
-
-
-
-
-
-
- GETITIMER C Library Procedures GETITIMER
-
-
-
- time and when the system is running on behalf of the pro-
- cess. It is designed to be used by interpreters in statist-
- ically profiling the execution of interpreted programs.
- Each time the ITIMER_PROF timer expires, the SIGPROF signal
- is delivered. Because this signal may interrupt in-progress
- system calls, programs using this timer must be prepared to
- restart interrupted system calls.
-
- NNOOTTEESS
- Three macros for manipulating time values are defined in
- <_s_y_s/_t_i_m_e._h>. _T_i_m_e_r_c_l_e_a_r sets a time value to zero, _t_i_m_e_r_-
- _i_s_s_e_t tests if a time value is non-zero, and _t_i_m_e_r_c_m_p com-
- pares two time values (beware that >= and <= do not work
- with this macro).
-
- RREETTUURRNN VVAALLUUEE
- If the calls succeed, a value of 0 is returned. If an error
- occurs, the value -1 is returned, and a more precise error
- code is placed in the global variable _e_r_r_n_o.
-
- EERRRROORRSS
- The possible errors are:
-
- [EFAULT] The _v_a_l_u_e parameter specified a bad address.
-
- [EINVAL] A _v_a_l_u_e parameter specified a time was too
- large to be handled.
-
- SSEEEE AALLSSOO
- select(2), sigvec(2), gettimeofday(2)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Sprite v1.0 December 18, 1986 2
-
-
-
-